.\"   $Id: unsetbddrefext.3,v 1.1 2002/03/18 11:26:51 ludo Exp $
.\" @(#)unsetbddrefext.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH UNSETBDDREFEXT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
unsetbddrefext \- increments the internal reference,
and decrements the external reference of a \fBbdd\fP node.
.so man1/alc_origin.1
.SH SYNOPSIS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**unsetbddrefext( BddNode )
  bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBunsetbddrefext\fP increments the number of internal reference
of the \fBbdd\fP node \fIBddNode\fP and decrements its number of
external reference.
.br
.SH RETURN VALUE
\fBunsetbddrefext\fP returns the \fIBddNode\fP pointer.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"negative reference, index xxx error !"
.ft R
.RS
The \fIBddNode\fP must have a positive number of external reference.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
   bddsystem  \(**BddSystem;
   bddcircuit \(**BddCircuit;
   bddnode    \(**BddNode;
   chain_list \(**Expr;
   BddSystem  = createbddsystem( 100, 1000, 100, 50000 );
   BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
   BddNode = addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
   BddNode = addbddnode( (bddsystem \(**)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
   Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
   incbddrefext( BddNode );
   unsetbddrefext( BddNode );
   /* displays Node VAR: 0  INDEX: 2  MARK: 0  REF_EXT: 0  REF_INT: 1 */
   viewbddnode( (bddsystem \(**)0, BddNode );
   /* displays (not i0) */
   viewablexpr( Expr, ABL_VIEW_VHDL );
   freeablexpr( Expr );
   destroybddsystem( (bddsystem \(**)0 );
   destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)


.so man1/alc_bug_report.1

